iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 21
0
DevOps

30天完成本地部署 kubernetes系列 第 21

加強 kubernetes 的可靠性(2):備份 kubernetes 集群

  • 分享至 

  • xImage
  •  

在 kubernetes 中,主要的狀態儲存在 control plane 的 etcd 中。

另外若是要從乾淨的環境中恢復 kubernetes 集群,也要保留原本的 certificate,才能重新建立集群內安全連線。

備份步驟如下:

  1. 執行 etcdctl 進行 snapshot,備份至 etcd-snapshot-latest.db。
  2. 備份 /etc/kubernetes/pki 至 kubepki.tgz。

完整指令如下:

ETCDIMAGE=k8s.gcr.io/etcd:3.3.10

ssh master1 "docker run --rm \
        -v \$(pwd):/backup \
        --network host \
        -v /etc/kubernetes/pki/etcd:/etc/kubernetes/pki/etcd \
        --env ETCDCTL_API=3 \
        ${ETCDIMAGE} \
        etcdctl \
        --endpoints=https://127.0.0.1:2379 \
        --cacert=/etc/kubernetes/pki/etcd/ca.crt \
        --cert=/etc/kubernetes/pki/etcd/healthcheck-client.crt \
        --key=/etc/kubernetes/pki/etcd/healthcheck-client.key \
        snapshot save /backup/etcd-snapshot-latest.db"

ssh master1 "sudo tar -zcpf - -C /etc/kubernetes/pki ." | cat > kubepki.tgz
ssh master1 "tar -zcf - etcd-snapshot-latest.db" | cat > etcd-snapshot-latest.tgz

ssh master1 "rm etcd-snapshot-latest.db"

上一篇
加強 kubernetes 的可靠性(1):關於 master 節點的備份及高可用
下一篇
加強 kubernetes 的可靠性(2):使用備份資料復原 kubernetes 集群
系列文
30天完成本地部署 kubernetes30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言